package jebl.evolution.align.scores;

public class Blosum80 extends AminoAcidScores {

  private final float[][] residueScores = {

            /*  A   R   N   D   C   Q   E   G   H   I   L   K   M   F   P   S   T   W   Y   V */
            {   7},
            {  -3,  9},
            {  -3, -1,  9},
            {  -3, -3,  2, 10},
            {  -1, -6, -5, -7, 13},
            {  -2,  1,  0, -1, -5,  9},
            {  -2, -1, -1,  2, -7,  3,  8},
            {   0, -4, -1, -3, -6, -4, -4,  9},
            {  -3,  0,  1, -2, -7,  1,  0, -4, 12},
            {  -3, -5, -6, -7, -2, -5, -6, -7, -6,  7},
            {  -3, -4, -6, -7, -3, -4, -6, -7, -5,  2,  6},
            {  -1,  3,  0, -2, -6,  2,  1, -3, -1, -5, -4,  8},
            {  -2, -3, -4, -6, -3, -1, -4, -5, -4,  2,  3, -3,  9},
            {  -4, -5, -6, -6, -4, -5, -6, -6, -2, -1,  0, -5,  0, 10},
            {  -1, -3, -4, -3, -6, -3, -2, -5, -4, -5, -5, -2, -4, -6, 12},
            {   2, -2,  1, -1, -2, -1, -1, -1, -2, -4, -4, -1, -3, -4, -2,  7},
            {   0, -2,  0, -2, -2, -1, -2, -3, -3, -2, -3, -1, -1, -4, -3,  2,  8},
            {  -5, -5, -7, -8, -5, -4, -6, -6, -4, -5, -4, -6, -3,  0, -7, -6, -5, 16},
            {  -4, -4, -4, -6, -5, -3, -5, -6,  3, -3, -2, -4, -3,  4, -6, -3, -3,  3, 11},
            {  -1, -4, -5, -6, -2, -4, -4, -6, -5,  4,  1, -4,  1, -2, -4, -3,  0, -5, -3,  7}};

  public Blosum80() { buildScores(residueScores); }
}
